package com.zhengbing.tj.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zhengbing.tj.entity.RolePermission;

import java.util.List;

/**
 * 角色权限关联服务接口
 * 提供角色权限关联实体的业务操作方法
 *
 * @author zhengbing
 * @date 2024-08-22
 */
public interface RolePermissionService extends IService<RolePermission> {
    
    /**
     * 根据角色ID删除角色权限关联
     * @param roleId 角色ID
     * @return 是否删除成功
     */
    boolean removeByRoleId(Long roleId);
    
    /**
     * 根据权限ID删除角色权限关联
     * @param permissionId 权限ID
     * @return 是否删除成功
     */
    boolean removeByPermissionId(Long permissionId);
    
    /**
     * 根据角色ID查询权限ID列表
     * @param roleId 角色ID
     * @return 权限ID列表
     */
    List<Long> selectPermissionIdsByRoleId(Long roleId);
    
    /**
     * 根据权限ID查询角色ID列表
     * @param permissionId 权限ID
     * @return 角色ID列表
     */
    List<Long> selectRoleIdsByPermissionId(Long permissionId);
}